﻿namespace Probel.Statistics.Domain
{
    using System;
    using System.Runtime.Serialization;

    [DataContract]
    public class Application
    {
        #region Constructors

        public Application()
        {
            this.Id = Guid.NewGuid();
            this.RegistrationDate = DateTime.MinValue;
            this.Counter = 1;
        }

        #endregion Constructors

        #region Properties

        [DataMember]
        public string AppName
        {
            get; set;
        }

        [DataMember]
        public int Counter
        {
            get;
            internal set;
        }

        [DataMember]
        public Guid Id
        {
            get;
            set;
        }

        [DataMember]
        public DateTime LastConnection
        {
            get; set;
        }

        [DataMember]
        public DateTime RegistrationDate
        {
            get;
            set;
        }

        [DataMember]
        public string WindowsSerial
        {
            get;
            set;
        }

        [DataMember]
        public string WindowsVersion
        {
            get;
            set;
        }

        #endregion Properties
    }
}